package view;

import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;

import model.Admin;
import model.CiiBay;
import model.Gebruiker;


/**
 * Paneel waarop gegevens van een gebruiker wordt weergeven.
 * @author Yasper
 */
@SuppressWarnings("serial")
public class EnkelGebruikerZoekResultaat extends JPanel{
	private CiiBay ciiBay;
	private Gebruiker gebruiker;
	private JLabel naam, rep, aantalBiedingen, aantalAdvertenties, aantalGekocht, aantalVerkocht;
	
	public EnkelGebruikerZoekResultaat(Gebruiker gebruiker, CiiBay ciiBay) {
		this.ciiBay = ciiBay;
		this.gebruiker = gebruiker;
		
		naam = new JLabel("Naam: "+gebruiker.getNaam());
		if(gebruiker.getReputatie() > 0){
			rep = new JLabel("Reputatie: "+ gebruiker.getReputatie());
		}else{
			rep = new JLabel("Nog geen reputatie!");
		}
		aantalBiedingen = new JLabel("Aantal Biedingen: "+ciiBay.checkAantalBiedingen(gebruiker.getID()));
		aantalAdvertenties = new JLabel("Aantal Advertenties: " + ciiBay.checkAantalAdvertentiesGebruiker(gebruiker.getID()));
		aantalGekocht = new JLabel("Aantal Gekocht: " + ciiBay.checkAantalGekochteArtikelen(gebruiker.getID()));
		aantalVerkocht = new JLabel("Aantal Verkocht: " + ciiBay.checkAantalVerkochteArtikelen(gebruiker.getID()));
		if(ciiBay.getIngelogtPersoon() != null){
			if(ciiBay.getIngelogtPersoon() instanceof Admin){
				rep.setForeground(Color.BLUE);
				rep.addMouseListener(new RepListener());
			}
		}
		
		maakLayout();
	}
	
	/**
	 * hier wordt de layout gemaakt
	 * @author Yasper
	 */
	public void maakLayout() {
		GridLayout l = new GridLayout(2,3);
		setLayout(l);
		l.setHgap(10);
		this.setBackground(Color.ORANGE);
		this.setBorder(BorderFactory.createMatteBorder(2, 2, 2, 2, Color.BLACK));
		add(naam);
		add(aantalAdvertenties);
		add(aantalGekocht);
		add(rep);
		add(aantalBiedingen);
		add(aantalVerkocht);
	}
	
	/**
	 * Listener voor rep- label.
	 * @author Yasper
	 */
	class RepListener extends MouseAdapter{
		@Override
		public void mouseClicked(MouseEvent arg0) {
			ciiBay.setGezochteGebruiker(gebruiker);
			ciiBay.veranderView("FeedbackVanUser");
		}
	}
}
